
// 字符验证
jQuery.validator.addMethod("stringCheck", function(value, element) {
    return this.optional(element) || /^[\u0391-\uFFE5\w]+$/.test(value);
}, "只能包括中文字、英文字母、数字和下划线");
// 中文字两个字节
jQuery.validator.addMethod("byteRangeLength", function(value, element, param) {
    var length = value.length;
    for(var i = 0; i < value.length; i++){
        if(value.charCodeAt(i) > 127){
            length++;
        }
    }
    return this.optional(element) || ( length >= param[0] && length <= param[1] );
}, "请确保输入的值在3-15个字节之间(一个中文字算2个字节)");

// 身份证号码验证
jQuery.validator.addMethod("isIdCardNo", function(value, element) {
    return this.optional(element) || idCardNoUtil.checkIdCardNo(value);
}, "请正确输入您的身份证号码");
//护照编号验证
jQuery.validator.addMethod("passport", function(value, element) {
    return this.optional(element) || checknumber(value);
}, "请正确输入您的护照编号");

// 手机号码验证
jQuery.validator.addMethod("isMobile", function(value, element) {
    var length = value.length;
    var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;
    return this.optional(element) || (length == 11 && mobile.test(value));
}, "请正确填写您的手机号码");

// 电话号码验证
jQuery.validator.addMethod("isTel", function(value, element) {
    var tel = /^\d{3,4}-?\d{7,9}$/; //电话号码格式010-12345678
    return this.optional(element) || (tel.test(value));
}, "请正确填写您的电话号码");

// 联系电话(手机/电话皆可)验证
jQuery.validator.addMethod("isPhone", function(value,element) {
    var length = value.length;
    var mobile = /^(((13[0-9]{1})|(15[0-9]{1}))+\d{8})$/;
    var tel = /^\d{3,4}-?\d{7,9}$/;
    return this.optional(element) || (tel.test(value) || mobile.test(value));

}, "请正确填写您的联系电话");

// 邮政编码验证
jQuery.validator.addMethod("isZipCode", function(value, element) {
    var tel = /^[0-9]{6}$/;
    return this.optional(element) || (tel.test(value));
}, "请正确填写您的邮政编码");


jQuery.validator.addMethod("maxMoney", function(value, element) {
    var money = parseFloat($("#totalCommission").text());
    console.log(money);
    return this.optional(element) || (parseFloat(value) <= money && parseFloat(value) > 0 );
}, "提款金额不能超过可提款佣金额度且最大2位小数" );

$(function () {
$('#formValue').validate({
    debug: false,
     onfocusout: function(element){
     $(element).valid();
     },
    // errorPlacement: function (error, element) {
    //     error.appendTo(element);
    // },
    rules: {
        person: {
            required: false
            // byteRangeLength : true
        },
        phone: {
            required: true,
            isPhone : true
        },
        contactAddress: {
            required: false,
            maxlength: 40
        },
        realName: {required: true,
            maxlength:10},
        idCard: {
            required: true,
            isIdCardNo : true
        },
        bankCard: {
            required: true
        },
        bankAddress: {
            required: true,
            maxlength:30
        },
        money : {
            required:true,
            number : true,
            min : 0,
            maxMoney : true
        },
        remark : {
            required:false,
            maxlength:200
        }
    },
    messages: {
        person: {
            // byteRangeLength : "请确保输入的值在3-15个字节之间(一个中文字算2个字节)"
        },
        phone: {
            required: '手机号码必填'
        },
        contactAddress: {
            maxlength: $.validator.format("最多可以输入 {0} 个字符")
        },
        realName: {
            required: '真实姓名必须填写',
            maxlength: $.validator.format("最多可以输入 {0} 个字符")
        },
        idCard: {
            required: '身份证号码必须填写',
            isIdCardNo:'请正确输入您的身份证号码'
        },
        bankCard: {
            required: '银行卡号必须填写'
        },
        money: {
            required: '请输入您的提款金额',
            number : "提款金额只能输入数字",
            min : $.validator.format("提款金额至少 {0}")
        }
    }
});
});

jQuery.validator.addMethod("isPhone", function(value, element) {
    var length = value.length;
    var mobile = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1})|(17[0-9]{1}))+\d{8})$/;
    return this.optional(element) || (length == 11 && mobile.test(value));
}, "请填写正确的手机号码");//可以自定义默认提示信息